Product:    IsaGRAF 3.X
Date: 30-October-2001
File: Easy IO driver on NT-Target.htm
Subject: Some indications to develop Easy IO drivers on NT-Target
Keywords: Easy IO – NT-Target

____________________________________________________________________

Here are some important points when you develop an EasyIO driver for the Windows NT target.
Please consult IO development tool guide for more details. Note that an "Easy IO" driver for the Windows NT target is a Dll.

Workbench configuration:

When defining your board in the library, you have the following dialog box to fill in:

The OEM key is always 0006 for all easy IO.
The OEM Parameter : 00 = correspond to the DLL_name where the driver is included.
01 = correspond to the Driver_name which was defined in the driver.
02 to 09 = must be defined with long format.
10 to 15 = must be defined with string format.
All OEM Parameters must be defined even if you don’t use them.

Target implementation:

To create a driver make a copy of drive_1.c in the folder easyIO of the target and rename it with your driver name.

In the driver file rename all MAIN_Driver_1 by your Driver_name which corresponds to the OEM Parameter 01 indicated in the workbench definition of your IO board (library).

In the easyio.c file add a structure to identify the driver :
/* definition of the default driver */
{ DRIVERNAME( Driver_Name ), /* macro with driver main function name */ don’t forget to put the good Driver_Name
YES_OUTPUT, /* is output supported by the driver ? */
YES_INPUT, /* is input supported by the driver ? */
YES_BOOLEAN, /* is boolean supported by the driver ? */
YES_ANALOG, /* is analog supported by the driver ? */
YES_MESSAGE, /* is message supported by the driver ? */
"l1", /* alias name for the l1 oem parameter */
"l2", /* alias name for the l2 oem parameter */
NOT_USED, /* alias name for the l3 oem parameter */
NOT_USED, /* alias name for the l4 oem parameter */
NOT_USED, /* alias name for the l5 oem parameter */
NOT_USED, /* alias name for the l6 oem parameter */
NOT_USED, /* alias name for the l7 oem parameter */
NOT_USED, /* alias name for the l8 oem parameter */
"s1", /* alias name for the s1 oem parameter */
"s2", /* alias name for the s2 oem parameter */
NOT_USED, /* alias name for the s3 oem parameter */
NOT_USED, /* alias name for the s4 oem parameter */
NOT_USED, /* alias name for the s5 oem parameter */
NOT_USED, /* alias name for the s6 oem parameter */
NO_HELP, /* is help handled by the driver ? */
"", /* the name of the help file, ex: my_help.hlp */
} ,

You must add a new structure for each EasyIO driver.

Include all IO drivers in the project EasyIO.mdp and generate the EasyIO.dll

Contact support to get IO driver examples: inbreizh.c and outbreizh.c with their definition board inbreizh.bia and outbreiz.bia.

____________________________________________________________________

Copyright © 1996-2009 ICS Triplex ISaGRAF Inc. All rights reserved.